5.2.3 开放容器计划(OCI)的影响

当Docker公司正在进行Docker daemon进程的拆解和重构的时候,OCI也正在着手定义两个容器相关的规范(或者说标准)。

  • 镜像规范。
  • 容器运行时规范。

两个规范均于2017年7月发布了1.0版。

Docker公司参与了这些规范的制定工作,并贡献了许多的代码。

从Docker 1.11版本(2016年初)开始,Docker引擎尽可能实现了OCI的规范。例如,Docker daemon不再包含任何容器运行时的代码——所有的容器运行代码在一个单独的OCI兼容层中实现。默认情况下,Docker使用runc来实现这一点。runc是OCI容器运行时标准的参考实现。如图5.3中的 runc 容器运行时层。runc项目的目标之一就是与OCI规范保持一致。目前OCI规范均为1.0版本,我们不希望它们频繁地迭代,毕竟稳定胜于一切。

除此之外,Docker引擎中的containerd组件确保了Docker镜像能够以正确的OCI Bundle的格式传递给runc。

注:

在OCI规范以1.0版本正式发布之前,Docker引擎就已经遵循该规范实现了部分功能。

results matching ""

    No results matching ""